home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / pc / LOGIC Apple II 5.25" Library - DOS Part 7 / DOS222.dsk / RANDOM.STORY.bas < prev    next >
BASIC Source File  |  2012-02-16  |  12KB  |  449 lines

  1. 1  REM  ******************
  2. 2  REM  * RANDOM  STORY
  3. 3  REM  * 
  4. 4  REM  * COPYRIGHT 1986
  5. 5  REM  * 
  6. 6  REM  * PHIL SHAPIRO
  7. 7  REM  *
  8. 8  REM  *******************
  9. 10  HOME : FOR D = 1 TO 1500: NEXT D: GOSUB 3000
  10. 15 Q = 0
  11. 20  HOME 
  12. 25  GOSUB 20000: GOSUB 15500
  13. 30  PRINT "ONCE"
  14. 40  GOSUB 22000: GOSUB 15300
  15. 50  PRINT "UPON"
  16. 60  GOSUB 24000: GOSUB 15200
  17. 70  PRINT "A"
  18. 80  GOSUB 26000: GOSUB 15100
  19. 90  PRINT "TIME,"
  20. 100  GOSUB 15600: GOSUB 28000
  21. 110  PRINT "IN"
  22. 120  GOSUB 30000: GOSUB 15100
  23. 130  PRINT "A"
  24. 140  GOSUB 32000: GOSUB 15100
  25. 150  PRINT "FAR"
  26. 155  GOSUB 34000: GOSUB 15100
  27. 160  PRINT "AWAY"
  28. 170  GOSUB 36000: GOSUB 15100
  29. 180  PRINT "LAND,"
  30. 190  GOSUB 15400: HOME : GOSUB 20000
  31. 200  PRINT "LIVED"
  32. 210  GOSUB 22000: GOSUB 15200
  33. 220  PRINT "A"
  34. 230  GOSUB 24000: GOSUB 15100
  35. 240  PRINT "RANDOMLY"
  36. 250  GOSUB 26000: GOSUB 15300
  37. 260  PRINT "GENERATED"
  38. 270  GOSUB 28000: GOSUB 15400
  39. 280  PRINT "STORY."
  40. 290  GOSUB 15400: HOME : GOSUB 15500: GOSUB 20000
  41. 300  PRINT "IN"
  42. 310  GOSUB 15200: GOSUB 22000
  43. 320  PRINT "THIS"
  44. 330  GOSUB 24000: GOSUB 15100
  45. 340  PRINT "STORY,"
  46. 350  GOSUB 26000: GOSUB 15300
  47. 360  PRINT "WORDS"
  48. 370  GOSUB 28000: GOSUB 15200
  49. 380  PRINT "APPEAR"
  50. 390  GOSUB 30000: GOSUB 15200
  51. 400  PRINT "AT"
  52. 410  GOSUB 15200: HOME : GOSUB 20000
  53. 420  PRINT "DIFFERENT"
  54. 430  GOSUB 15200: GOSUB 22000
  55. 440  PRINT "PARTS"
  56. 450  GOSUB 24000: GOSUB 15100
  57. 460  PRINT "OF"
  58. 470  GOSUB 26000: GOSUB 15100
  59. 480  PRINT "THE"
  60. 490  GOSUB 28000: GOSUB 15100
  61. 500  PRINT "SCREEN,"
  62. 510  GOSUB 15300: HOME : GOSUB 20000
  63. 520  PRINT "ON"
  64. 530  GOSUB 22000: GOSUB 15100
  65. 540  PRINT "A"
  66. 550  GOSUB 24000: GOSUB 15100
  67. 560  PRINT "COMPLETELY"
  68. 570  GOSUB 26000: GOSUB 15200
  69. 580  PRINT "RANDOM"
  70. 590  GOSUB 28000: GOSUB 15200
  71. 600  PRINT "BASIS."
  72. 610  GOSUB 15300: HOME : GOSUB 15400: GOSUB 20000
  73. 620  PRINT "THE"
  74. 630  GOSUB 15200: GOSUB 22000
  75. 640  PRINT "STORY"
  76. 650  GOSUB 24000: GOSUB 15200
  77. 660  PRINT "OF"
  78. 670  GOSUB 26000: GOSUB 15200
  79. 680  PRINT "THIS"
  80. 690  GOSUB 28000: GOSUB 15100
  81. 700  PRINT "STORY"
  82. 710  GOSUB 15300: HOME : GOSUB 20000
  83. 720  PRINT "BEGINS"
  84. 730  GOSUB 22000: GOSUB 15200
  85. 740  PRINT "WITH"
  86. 750  GOSUB 24000: GOSUB 15100
  87. 760  PRINT "A"
  88. 770  GOSUB 26000: GOSUB 15100
  89. 780  PRINT "WRITER,"
  90. 790  GOSUB 15200: HOME : GOSUB 20000
  91. 800  PRINT "AND"
  92. 810  GOSUB 22000: GOSUB 15100
  93. 820  PRINT "COMPUTER"
  94. 830  GOSUB 24000: GOSUB 15200
  95. 840  PRINT "ENTHUSIAST,"
  96. 850  GOSUB 15300: HOME : GOSUB 20000
  97. 860  PRINT "WHO"
  98. 870  GOSUB 15100: GOSUB 22000
  99. 880  PRINT "WAS"
  100. 890  GOSUB 24000: GOSUB 15100
  101. 900  PRINT "FEELING"
  102. 910  GOSUB 26000: GOSUB 15200
  103. 920  PRINT "AWFULLY"
  104. 930  GOSUB 28000: GOSUB 15300
  105. 940  PRINT "FRISKY"
  106. 950  GOSUB 30000: GOSUB 15200
  107. 960  PRINT "ONE"
  108. 970  GOSUB 32000: GOSUB 15100
  109. 980  PRINT "DAY."
  110. 990  GOSUB 16500: HOME : GOSUB 15300: GOSUB 20000
  111. 1000  PRINT "TIRED"
  112. 1010  GOSUB 22000: GOSUB 15200
  113. 1020  PRINT "OF"
  114. 1030  GOSUB 24000: GOSUB 15100
  115. 1040  PRINT "THE"
  116. 1050  GOSUB 15100
  117. 1060  GOSUB 15100: GOSUB 26000
  118. 1070  PRINT "HUMDRUM"
  119. 1080  GOSUB 15200: GOSUB 28000
  120. 1090  PRINT "CHORE"
  121. 1100  GOSUB 15200: HOME : GOSUB 20000
  122. 1110  PRINT "OF"
  123. 1120  GOSUB 15100: GOSUB 22000
  124. 1130  PRINT "WRITING"
  125. 1140  GOSUB 15200: GOSUB 24000
  126. 1150  PRINT "FROM"
  127. 1160  GOSUB 15200: GOSUB 26000
  128. 1170  PRINT "LEFT"
  129. 1180  GOSUB 15100: GOSUB 28000
  130. 1190  PRINT "TO"
  131. 1200  GOSUB 15100: GOSUB 30000
  132. 1210  PRINT "RIGHT,"
  133. 1220  GOSUB 15200: HOME : GOSUB 15100: GOSUB 20000
  134. 1230  PRINT "AND"
  135. 1240  GOSUB 15100: GOSUB 22000
  136. 1250  PRINT "BEING"
  137. 1260  GOSUB 15100: GOSUB 24000
  138. 1270  PRINT "READ"
  139. 1280  GOSUB 15300: GOSUB 26000
  140. 1290  PRINT "FROM"
  141. 1300  GOSUB 15100: GOSUB 28000
  142. 1310  PRINT "LEFT"
  143. 1320  GOSUB 15100: GOSUB 30000
  144. 1330  PRINT "TO"
  145. 1340  GOSUB 15100: GOSUB 32000
  146. 1350  PRINT "RIGHT,"
  147. 1360  GOSUB 15300: HOME : GOSUB 15200: GOSUB 20000
  148. 1370  PRINT "THE"
  149. 1380  GOSUB 15100: GOSUB 22000
  150. 1390  PRINT "AUTHOR"
  151. 1400  GOSUB 15200: GOSUB 24000
  152. 1410  PRINT "DECIDED"
  153. 1420  GOSUB 15200: GOSUB 26000
  154. 1430  PRINT "TO"
  155. 1440  GOSUB 15100: GOSUB 28000
  156. 1450  PRINT "ADD"
  157. 1460  GOSUB 15200: HOME : GOSUB 15300: GOSUB 20000
  158. 1470  PRINT "A"
  159. 1480  GOSUB 15100: GOSUB 22000
  160. 1490  PRINT "WHOLE"
  161. 1500  GOSUB 15100: GOSUB 24000
  162. 1510  PRINT "NEW"
  163. 1520  GOSUB 15400: GOSUB 26000
  164. 1530  PRINT "DIMENSION"
  165. 1540  GOSUB 15300: GOSUB 28000
  166. 1550  PRINT "TO"
  167. 1560  GOSUB 15100: GOSUB 30000
  168. 1570  PRINT "HIS"
  169. 1580  GOSUB 15100: GOSUB 32000
  170. 1590  PRINT "WRITING."
  171. 1600  GOSUB 16500: GOSUB 26000
  172. 1610  HOME : GOSUB 16500: GOSUB 20000
  173. 1620  PRINT "FOR"
  174. 1630  GOSUB 15200: GOSUB 22000
  175. 1640  PRINT "TOO"
  176. 1650  GOSUB 15100: GOSUB 24000
  177. 1660  PRINT "LONG"
  178. 1670  GOSUB 15200: HOME : GOSUB 20000
  179. 1680  PRINT "READERS"
  180. 1690  GOSUB 15200: GOSUB 22000
  181. 1700  PRINT "OF"
  182. 1710  GOSUB 15100: GOSUB 24000
  183. 1720  PRINT "THE"
  184. 1730  GOSUB 15100: GOSUB 26000
  185. 1740  PRINT "ENGLISH"
  186. 1750  GOSUB 15200: GOSUB 28000
  187. 1760  PRINT "LANGUAGE"
  188. 1770  GOSUB 15300: HOME : GOSUB 20000
  189. 1780  PRINT "HAVE"
  190. 1790  GOSUB 15200: GOSUB 22000
  191. 1800  PRINT "BEEN"
  192. 1810  GOSUB 15100: GOSUB 24000
  193. 1820  PRINT "LULLED"
  194. 1830  GOSUB 15200: GOSUB 26000
  195. 1840  PRINT "INTO"
  196. 1850  GOSUB 15200: GOSUB 28000
  197. 1860  PRINT "COMPLACENCY"
  198. 1870  GOSUB 15300: HOME : GOSUB 20000
  199. 1880  PRINT "BY"
  200. 1890  GOSUB 15100: GOSUB 22000
  201. 1900  PRINT "READING"
  202. 1910  GOSUB 15200: GOSUB 24000
  203. 1920  PRINT "FROM"
  204. 1930  GOSUB 15200: GOSUB 26000
  205. 1940  GOSUB 15200: GOSUB 22000
  206. 1950  PRINT "LEFT"
  207. 1960  GOSUB 15200: GOSUB 28000
  208. 1970  PRINT "TO"
  209. 1980  GOSUB 15100: GOSUB 30000
  210. 1990  PRINT "RIGHT."
  211. 2000  GOSUB 16500: HOME : GOSUB 15600: GOSUB 20000
  212. 2010  PRINT "READING"
  213. 2020  GOSUB 15300: GOSUB 22000
  214. 2030  PRINT "FROM"
  215. 2040  GOSUB 15200: GOSUB 24000
  216. 2050  PRINT "LEFT"
  217. 2060  GOSUB 15100: GOSUB 26000
  218. 2070  PRINT "TO"
  219. 2080  GOSUB 15100: GOSUB 28000
  220. 2090  PRINT "RIGHT"
  221. 2100  GOSUB 15300: HOME : GOSUB 20000
  222. 2110  PRINT "FOSTERS"
  223. 2120  GOSUB 15200: GOSUB 22000
  224. 2130  PRINT "A"
  225. 2140  GOSUB 15200: GOSUB 24000
  226. 2150  PRINT "CERTAIN"
  227. 2160  GOSUB 15300: GOSUB 26000
  228. 2170  PRINT "TYPE"
  229. 2180  GOSUB 15300: GOSUB 28000
  230. 2190  PRINT "OF"
  231. 2200  GOSUB 15200: GOSUB 30000
  232. 2210  PRINT "LINEAR"
  233. 2220  GOSUB 15300: GOSUB 32000
  234. 2230  PRINT "THINKING."
  235. 2240  GOSUB 16500: HOME : GOSUB 15600: GOSUB 20000
  236. 2250  PRINT "BUT"
  237. 2260  GOSUB 15200: GOSUB 22000
  238. 2270  PRINT "LIFE"
  239. 2280  GOSUB 15300: GOSUB 24000
  240. 2290  PRINT "ITSELF"
  241. 2300  GOSUB 15300: GOSUB 26000
  242. 2310  PRINT "ISN'T"
  243. 2320  GOSUB 15200: GOSUB 20000
  244. 2330  PRINT "LINEAR."
  245. 2340  GOSUB 15700: HOME : GOSUB 15500: GOSUB 22000
  246. 2350  PRINT "OUR"
  247. 2352  GOSUB 15300: GOSUB 24000
  248. 2355  PRINT "EVERYDAY"
  249. 2357  GOSUB 15300: GOSUB 26000
  250. 2361  PRINT "THOUGHTS"
  251. 2363  GOSUB 15300: GOSUB 28000
  252. 2365  PRINT "DON'T"
  253. 2367  GOSUB 15200: GOSUB 30000
  254. 2369  PRINT "JUMP"
  255. 2371  GOSUB 15300: HOME : GOSUB 20000
  256. 2373  PRINT "INTO"
  257. 2375  GOSUB 15200: GOSUB 22000
  258. 2377  PRINT "OUR"
  259. 2379  GOSUB 15200: GOSUB 24000
  260. 2381  PRINT "HEADS"
  261. 2385  GOSUB 15300: GOSUB 26000
  262. 2410  PRINT "FROM"
  263. 2420  GOSUB 15200: GOSUB 28000
  264. 2430  PRINT "LEFT"
  265. 2440  GOSUB 15100: GOSUB 30000
  266. 2450  PRINT "TO"
  267. 2460  GOSUB 15100: GOSUB 32000
  268. 2470  PRINT "RIGHT."
  269. 2480  GOSUB 15500: HOME : GOSUB 20000
  270. 2490  PRINT "SINCE"
  271. 2500  GOSUB 15200: GOSUB 22000
  272. 2510  PRINT "OUR"
  273. 2520  GOSUB 15200: GOSUB 24000
  274. 2530  PRINT "THOUGHTS"
  275. 2540  GOSUB 15300: GOSUB 26000
  276. 2550  PRINT "GENERALLY"
  277. 2560  GOSUB 15300: HOME : GOSUB 20000
  278. 2570  PRINT "POP"
  279. 2580  GOSUB 15200: GOSUB 22000
  280. 2583  PRINT "RANDOMLY"
  281. 2587  GOSUB 15300: GOSUB 24000
  282. 2590  PRINT "INTO"
  283. 2600  GOSUB 15200: GOSUB 26000
  284. 2610  PRINT "OUR"
  285. 2620  GOSUB 15200: GOSUB 28000
  286. 2630  PRINT "HEADS,"
  287. 2640  GOSUB 15500: HOME : GOSUB 20000
  288. 2650  PRINT "WOULDN'T"
  289. 2660  GOSUB 15300: GOSUB 22000
  290. 2670  PRINT "IT"
  291. 2680  GOSUB 15200: GOSUB 24000
  292. 2690  PRINT "BE"
  293. 2700  GOSUB 15200: GOSUB 26000
  294. 2710  PRINT "MORE"
  295. 2720  GOSUB 15200: GOSUB 28000
  296. 2730  PRINT "NATURAL"
  297. 2740  GOSUB 15400: HOME : GOSUB 20000
  298. 2750  PRINT "FOR"
  299. 2760  GOSUB 15200: GOSUB 22000
  300. 2780  PRINT "WRITING"
  301. 2790  GOSUB 15300: GOSUB 24000
  302. 2800  PRINT "TO"
  303. 2810  GOSUB 15200: GOSUB 26000
  304. 2820  PRINT "POP"
  305. 2830  GOSUB 15200: GOSUB 28000
  306. 2840  PRINT "RIGHT"
  307. 2850  GOSUB 15200: GOSUB 30000
  308. 2860  PRINT "OUT"
  309. 2870  GOSUB 15200: GOSUB 32000
  310. 2880  PRINT "AT"
  311. 2890  GOSUB 15100: GOSUB 34000
  312. 2900  PRINT "YOU ?"
  313. 2910  GOSUB 15500: HOME : GOSUB 15500: GOSUB 15200
  314. 2920  PRINT "COPYRIGHT OCT. 1986   PHIL SHAPIRO"
  315. 2930  GOSUB 15500
  316. 2940  END 
  317. 3000  SPEED= 60
  318. 3010  VTAB 8: HTAB 12: PRINT "RANDOM  STORY"
  319. 3020  FOR D = 1 TO 500: NEXT D
  320. 3030  VTAB 12: PRINT "PLEASE CHOOSE A DISPLAY SPEED:"
  321. 3040  FOR D = 1 TO 200: NEXT D
  322. 3050  VTAB 14: PRINT "(TYPE IN ONE OF THE NUMBERS.)"
  323. 3060  VTAB 16: HTAB 20: PRINT "1. SLOW"
  324. 3070  VTAB 18: HTAB 20: PRINT "2. MEDIUM"
  325. 3080  VTAB 20: HTAB 20: PRINT "3. FAST"
  326. 3090  VTAB 22: GET CH
  327. 3100  IF CH = 1  THEN  SPEED= 40: HOME : FOR D = 1 TO 1200: NEXT D: RETURN 
  328. 3110  IF CH = 2  THEN  SPEED= 80: HOME : FOR D = 1 TO 1200: NEXT D: RETURN 
  329. 3120  IF CH = 3  THEN  SPEED= 120: HOME : FOR D = 1 TO 1200: NEXT D: RETURN 
  330. 3130  GOTO 3090
  331. 15100  FOR D = 1 TO 100: NEXT D
  332. 15150  RETURN 
  333. 15200  FOR D = 1 TO 200: NEXT D
  334. 15250  RETURN 
  335. 15300  FOR D = 1 TO 300: NEXT D
  336. 15350  RETURN 
  337. 15400  FOR D = 1 TO 400: NEXT D
  338. 15450  RETURN 
  339. 15500  FOR D = 1 TO 500: NEXT D
  340. 15550  RETURN 
  341. 15600  FOR D = 1 TO 600: NEXT D
  342. 15650  RETURN 
  343. 15700  FOR D = 1 TO 700: NEXT D
  344. 15750  RETURN 
  345. 15800  FOR D = 1 TO 800: NEXT D
  346. 15850  RETURN 
  347. 15900  FOR D = 1 TO 900: NEXT D
  348. 15950  RETURN 
  349. 16500  FOR D = 1 TO 1500: NEXT D
  350. 16550  RETURN 
  351. 20000  FOR D = 1 TO 10: NEXT D
  352. 20010 X =  INT((30 * RND(1)) +1)
  353. 20020 Y =  INT((24 * RND(1)) +1)
  354. 20030  HTAB X: VTAB Y
  355. 20040  RETURN 
  356. 22000 Q =  INT((24 * RND(1)) +1)
  357. 22010  IF Q = Y  THEN 22000
  358. 22015 X = ((30 * RND(1)) +1)
  359. 22020  HTAB X: VTAB Q
  360. 22030  RETURN 
  361. 24000 R =  INT((24 * RND(1)) +1)
  362. 24005 X =  INT((32 * RND(1)) +1)
  363. 24010  IF R = Q  THEN 24000
  364. 24020  IF R = Y  THEN 24000
  365. 24030 X = ((30 * RND(1)) +1)
  366. 24040  HTAB X: VTAB R
  367. 24050  RETURN 
  368. 26000 S =  INT((24 * RND(1)) +1)
  369. 26010  IF S = R  THEN 26000
  370. 26020  IF S = Q  THEN 26000
  371. 26030  IF S = Y  THEN 26000
  372. 26040 X = ((30 * RND(1)) +1)
  373. 26050  HTAB X: VTAB S
  374. 26060  RETURN 
  375. 28000 T =  INT((24 * RND(1)) +1)
  376. 28010  IF T = S  THEN 28000
  377. 28020  IF T = R  THEN 28000
  378. 28030  IF T = Q  THEN 28000
  379. 28040  IF T = Y  THEN 28000
  380. 28050 X = ((30 * RND(1)) +1)
  381. 28060  HTAB X: VTAB T
  382. 28070  RETURN 
  383. 30000 U =  INT((24 * RND(1)) +1)
  384. 30010  IF U = T  THEN 30000
  385. 30020  IF U = S  THEN 30000
  386. 30030  IF U = R  THEN 30000
  387. 30040  IF U = Q  THEN 30000
  388. 30050  IF U = Y  THEN 30000
  389. 30060 X = ((30 * RND(1)) +1)
  390. 30070  HTAB X: VTAB U
  391. 30080  RETURN 
  392. 32000 V =  INT((24 * RND(1)) +1)
  393. 32010  IF V = U  THEN 32000
  394. 32020  IF V = T  THEN 32000
  395. 32030  IF V = S  THEN 32000
  396. 32040  IF V = R  THEN 32000
  397. 32050  IF V = Q  THEN 32000
  398. 32060  IF V = Y  THEN 32000
  399. 32070 X = ((30 * RND(1)) +1)
  400. 32080  HTAB X: VTAB V
  401. 32090  RETURN 
  402. 34000 W =  INT((24 * RND(1)) +1)
  403. 34010 X = ((30 * RND(1)) +1)
  404. 34020  IF W = V  THEN 34000
  405. 34030  IF W = T  THEN 34000
  406. 34040  IF W = S  THEN 34000
  407. 34050  IF W = R  THEN 34000
  408. 34060  IF W = Q  THEN 34000
  409. 34070  IF W = Y  THEN 34000
  410. 34080  HTAB X: VTAB W
  411. 34090  RETURN 
  412. 36000 Z =  INT((24 * RND(1)) +1)
  413. 36010 X = ((30 * RND(1)) +1)
  414. 36020  IF Z = W  THEN 36000
  415. 36030  IF Z = U  THEN 36000
  416. 36040  IF Z = T  THEN 36000
  417. 36050  IF Z = S  THEN 36000
  418. 36060  IF Z = R  THEN 36000
  419. 36070  IF Z = Q  THEN 36000
  420. 36080  IF Z = Y  THEN 36000
  421. 36090  HTAB X: VTAB Z
  422. 36100  RETURN 
  423. 38000 A =  INT((24 * RND(1)) +1)
  424. 38010 X = ((30 * RND(1)) +1)
  425. 38020  IF A = Z  THEN 38000
  426. 38030  IF A = W  THEN 38000
  427. 38040  IF A = V  THEN 38000
  428. 38050  IF A = U  THEN 38000
  429. 38060  IF A = T  THEN 38000
  430. 38070  IF A = S  THEN 38000
  431. 38080  IF A = R  THEN 38000
  432. 38090  IF A = Q  THEN 38000
  433. 38100  IF A = Y  THEN 38000
  434. 38110  HTAB X: VTAB A
  435. 38120  RETURN 
  436. 40000 B =  INT((24 * RND(1)) +1)
  437. 40010 X = ((30 * RND(1)) +1)
  438. 40020  IF B = A GOTO 40000
  439. 40030  IF B = Z  THEN 40000
  440. 40040  IF B = W  THEN 40000
  441. 40050  IF B = V  THEN 40000
  442. 40060  IF B = U  THEN 40000
  443. 40070  IF B = T  THEN 40000
  444. 40080  IF B = S  THEN 40000
  445. 40090  IF B = R  THEN 40000
  446. 40100  IF B = Q  THEN 40000
  447. 40110  IF B = Y  THEN 40000
  448. 40120  HTAB X: VTAB B
  449. 40130  RETURN